const db=require('../config/db.js');
const Sequlize=db.sequlize;
const User=Sequlize.import('../schema/user.js')//导入模型
User.sync({force:false});//同步模型到数据库 force设置为 true，会在创建表前先删除原表，即：DROP TABLE IF EXISTS

class UserModel {
  /**
  *创建用户
  *@param user
  *@returns {Promise<boolean>}
  */
  static async create(user){
    let {username,password}=user;
    await User.create({
      username,
      password
    })
    return true;
  }

  /**
  *删除用户
  *@param id listID
  *@returns {Promise<boolean>}
  */
  static async delete(id){
    await User.destroy({
      where:{
        id,
      }
    })
    return true;
  }

  /**
  *查询用户列表
  *@returns {Promise<*>}
  */
  static async findAllList(){
    return await User.findAll({
      attributes:['id','username']
    })
  }
  // return await User.findAll({
  //           attributes: ['id', 'username']
  //       })

  /**
  *查询用户信息
  *@param username
  *@returns {Promise.<*>}
  */
  static async findUserByName(username){
    return await User.findOne(
      {
        where:{
          username
        }
      }
    )
  }

}

module.exports=UserModel;
